
class Trayectoria {
  Golpe inicio;
  Golpe fin;

  PVector puntoV;//almacenamos el par (y,z) que se corresponde con el azimut de la curva.

  Trayectoria(Golpe i, Golpe f, PVector pv) {
    inicio = i;
    fin    = f;
    puntoV = pv;
  }  

  Trayectoria(Golpe i, Golpe f) {
    inicio = i;
    fin    = f;
    puntoV = new PVector(0.0, 2.25 + random(-0.75,0.75), 0.6+random(-0.1,0.1));
  }  

  String toString () {
    return "inicio:(" + inicio + ") fin(" + fin + ") v:" + puntoV;
  } 

  void pinta(Golpe g, Boolean black) {
    inicio.pinta();
    fin.pinta();
    
    if (black)
      stroke(0);
    else
      stroke(127);
      
    line(inicio.pos.x, inicio.pos.z, fin.pos.x, fin.pos.z);
  }
  
  float distancia(){
    
    return PVector.dist(inicio.pos, fin.pos);
//    
//   float vectorX = fin.pos.x - inicio.pos.x;
//   float vectorZ = fin.pos.z - inicio.pos.z;
//   
//   return sqrt( pow(vectorX, 2) + pow(vectorZ, 2));
  }
}

